﻿Imports System.Web.Script.Services
Imports System.Web.Script.Serialization
Imports System.Web
Imports System.Web.Services
Imports System.Web.Services.Protocols

Partial Public Class Wfrm_Modificar_Prueba
    Inherits Wfrm_Master

    Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
        If Not Page.IsPostBack Then
            ViewState("usuario") = Session("usuario")
            Session.Remove("secciones")
            Session.Remove("id_prueba")
            Session.Remove("nombre_prueba")
            Session.Remove("txt_codigo_prueba")
            Session.Remove("txt_Observacion_prueba")
            Session.Remove("secciones")

            txt_usuario_prueba.Text = ViewState("usuario")
            txt_usuario_UPDATE.Text = ViewState("usuario")

        End If

    End Sub
    Sub CargarBusquedaPruebas()
        Dim Rp As New DotNetResponse.SQLPersistence
        CL_PRUEBA.Get_Prueba(Rp, txt_buscar_prueba.Text.Trim, ViewState("usuario"))
        Dg_Pruebas.DataSource = Rp.DtTable
        Dg_Pruebas.DataBind()
        Dg_Pruebas.UpdateAfterCallBack = True
    End Sub


    Protected Sub Btn_Buscar_Pruebas_Click(ByVal sender As Object, ByVal e As EventArgs) Handles Btn_Buscar_Pruebas.Click
        CargarBusquedaPruebas()
    End Sub

    Protected Sub Btn_Crear_Prueba_Click(ByVal sender As Object, ByVal e As EventArgs) Handles Btn_Crear_Prueba.Click
        If cmb_Seccion.Text = 0 Then
            MsgInformativo("Seleccione la Sección")
            Exit Sub
        End If

        If txt_titulo_prueba.Text.Trim.Length = 0 Then
            MsgInformativo("Ingrese el Título de la Prueba")
            Exit Sub
        End If


        If SavePrueba() Then
            Session("usuario") = ViewState("usuario")
            Session("id_prueba") = txt_id_prueba.Text
            Session("nombre_prueba") = txt_titulo_prueba.Text.Trim
            Session("secciones") = cmb_Seccion.Text
            Session("txt_codigo_prueba") = txt_codigo_prueba.Text
            Session("txt_Observacion_prueba") = txt_Observacion_prueba.Text.Trim
            'Server.Transfer("Wfrm_Crear_Modificar_Seccion_Pruebas.aspx", True)
            Response.Redirect("Wfrm_Crear_Modificar_Seccion_Pruebas.aspx", True)
        End If

    End Sub

    Function SavePrueba() As Boolean
        Dim rp As New DotNetResponse.SQLPersistence
        ' Dim Sv ' As New DalAppTestBuilder.TB_GENERICA
        'Sv.Save(rp, Panel1, Val(txt_id_prueba.Text), txt_id_prueba.SkinID, True)

        'DalAppTestBuilder.TB_PRUEBA_DISENO.CREAR_PRUEBA_DISENNO(rp, Nothing, Val(txt_id_prueba.Text), txt_codigo_prueba.Text, cmb_Seccion.Text, txt_titulo_prueba.Text, txt_Observacion_prueba.Text, txt_usuario_prueba.Text, txt_estado_prueba1.Text, Format(Now, "yyyyMMdd hhmm"), Format(Now, "yyyyMMdd hhmm"), txt_usuario_UPDATE.Text)

        If rp.TieneDatos Then
            txt_id_prueba.Text = rp.Get_Value  '.DtTable.Rows(0).Item(0)
            txt_id_prueba.UpdateAfterCallBack = True
        End If

        If Not rp.Errores Then

            lbl_paso1.ForeColor = Drawing.Color.Silver
            lbl_paso1.Font.Bold = False

            lbl_paso2.ForeColor = Drawing.Color.Blue
            lbl_paso2.Font.Bold = True

            lbl_paso1.UpdateAfterCallBack = True
            lbl_paso2.UpdateAfterCallBack = True


            Return True

        Else
            MsgError(rp.MensajeError)
            Return False
        End If

    End Function

    Protected Sub Dg_Pruebas_SelectedIndexChanged(ByVal sender As Object, ByVal e As EventArgs) Handles Dg_Pruebas.SelectedIndexChanged
        cmb_Seccion.SelectedValue = Dg_Pruebas.SelectedItem.Cells(3).Text.Replace("&nbsp;", "")
        txt_id_prueba.Text = Dg_Pruebas.SelectedItem.Cells(0).Text.Replace("&nbsp;", "")
        txt_titulo_prueba.Text = Dg_Pruebas.SelectedItem.Cells(2).Text.Replace("&nbsp;", "")
        txt_codigo_prueba.Text = Dg_Pruebas.SelectedItem.Cells(5).Text.Replace("&nbsp;", "")
        txt_Observacion_prueba.Text = Dg_Pruebas.SelectedItem.Cells(6).Text.Replace("&nbsp;", "")

        cmb_Seccion.UpdateAfterCallBack = True
        txt_id_prueba.UpdateAfterCallBack = True
        txt_titulo_prueba.UpdateAfterCallBack = True
        txt_codigo_prueba.UpdateAfterCallBack = True
        txt_Observacion_prueba.UpdateAfterCallBack = True

    End Sub

    <Anthem.Method()> _
    Public Function Eliminar_Prueba(ByVal Id_Prueba As String)
        Dim cc As String = Session("prueba_id")
        If Session("prueba_id") Is Nothing Then
            Return Nothing
        End If

        Dim rp As New DotNetResponse.SQLPersistence
        'DalAppTestBuilder.TB_PRUEBA_DISENO.ELIMINA_PRUEBA_DISENNO(rp, Nothing, Session("prueba_id"), ViewState("usuario"))


        If Not rp.Errores Then

            MsgInformativo("Prueba Eliminada")

            CargarBusquedaPruebas()

            Return True

        Else
            MsgError("Imposible Eliminar Prueba")
            Return False
        End If


    End Function

    Protected Sub img_eliminar_Click(ByVal sender As Object, ByVal e As System.Web.UI.ImageClickEventArgs)
        Session("prueba_id") = DirectCast(sender.parent.parent, System.Web.UI.WebControls.DataGridItem).Cells(0).Text

        MsgConfirm("¿Está seguro (a) de eliminar la prueba?", "function(r){ if(r){Anthem_InvokePageMethod('Eliminar_Prueba',[" & Session("prueba_id") & "],function(result) {});} }")
    End Sub


    Protected Sub Btn_nueva_Pruebas0_Click(ByVal sender As Object, ByVal e As EventArgs) Handles Btn_nueva_Pruebas0.Click
        txt_id_prueba.Text = "0"
        cmb_Seccion.SelectedValue = 0
        txt_codigo_prueba.Text = ""
        txt_titulo_prueba.Text = ""
        txt_Observacion_prueba.Text = ""

        txt_id_prueba.UpdateAfterCallBack = True
        cmb_Seccion.UpdateAfterCallBack = True
        txt_codigo_prueba.UpdateAfterCallBack = True
        txt_titulo_prueba.UpdateAfterCallBack = True
        txt_Observacion_prueba.UpdateAfterCallBack = True


    End Sub
End Class